using System.ComponentModel;
using System.Runtime.CompilerServices;

namespace System.Linq.Expressions {
	[Imported]
	public enum ExpressionType {
		Add,
		AddChecked,
		And,
		AndAlso,
		ArrayLength,
		ArrayIndex,
		Call,
		Coalesce,
		Conditional,
		Constant,
		Convert,
		ConvertChecked,
		Divide,
		Equal,
		ExclusiveOr,
		GreaterThan,
		GreaterThanOrEqual,
		Invoke,
		Lambda,
		LeftShift,
		LessThan,
		LessThanOrEqual,
		ListInit,
		MemberAccess,
		MemberInit,
		Modulo,
		Multiply,
		MultiplyChecked,
		Negate,
		UnaryPlus,
		NegateChecked,
		New,
		NewArrayInit,
		NewArrayBounds,
		Not,
		NotEqual,
		Or,
		OrElse,
		Parameter,
		Power,
		Quote,
		RightShift,
		Subtract,
		SubtractChecked,
		TypeAs,
		TypeIs,
		Assign,
		Block,
		DebugInfo,
		Decrement,
		Dynamic,
		Default,
		Extension,
		Goto,
		Increment,
		Index,
		Label,
		RuntimeVariables,
		Loop,
		Switch,
		Throw,
		Try,
		Unbox,
		AddAssign,
		AndAssign,
		DivideAssign,
		ExclusiveOrAssign,
		LeftShiftAssign,
		ModuloAssign,
		MultiplyAssign,
		OrAssign,
		PowerAssign,
		RightShiftAssign,
		SubtractAssign,
		AddAssignChecked,
		MultiplyAssignChecked,
		SubtractAssignChecked,
		PreIncrementAssign,
		PreDecrementAssign,
		PostIncrementAssign,
		PostDecrementAssign,
		TypeEqual,
		OnesComplement,
		IsTrue,
		IsFalse,
	}
}